From 2e32545e9bc1885c868dc1789021a7da83a34211 Mon Sep 17 00:00:00 2001 From: tsteven4 <13596209+tsteven4@users.noreply.github.com> Date: Wed, 12 Oct 2022 10:05:12 -0600 Subject: [PATCH] update workflows (#932) * move github workflows towards cmake. * update action versions. * update actions * add workflow dispatch to all workflows * remove travis --- .github/workflows/codeql-analysis.yml | 9 +- .github/workflows/fedora.yml | 10 +- .github/workflows/macos.yml | 21 +++-- .github/workflows/ubuntu.yml | 1 + .github/workflows/windows.yml | 9 +- .github/workflows/windows_ondemand.yml | 8 +- .travis.yml | 125 ------------------------- 7 files changed, 31 insertions(+), 152 deletions(-) delete mode 100644 .travis.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index e71c1e0c1..63e5f675d 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -20,6 +20,7 @@ on: branches: [ master ] schedule: - cron: '27 4 * * 2' + workflow_dispatch: ~ jobs: analyze: @@ -38,11 +39,11 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v1 + uses: github/codeql-action/init@v2 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -53,7 +54,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v1 + uses: github/codeql-action/autobuild@v2 # ℹ️ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -67,4 +68,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 + uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/fedora.yml b/.github/workflows/fedora.yml index 41e4d6e04..ce46fbc5d 100644 --- a/.github/workflows/fedora.yml +++ b/.github/workflows/fedora.yml @@ -1,13 +1,9 @@ name: "fedora" on: - push: - branches: [ '**'] - pull_request: - # The branches below must be a subset of the branches above - branches: [ master ] schedule: - - cron: '27 4 * * 2' + - cron: '27 3 * * 2' + workflow_dispatch: ~ jobs: @@ -26,7 +22,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: build_and_test run: | diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 0eeacb194..63087994f 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -8,6 +8,7 @@ on: branches: [ master ] schedule: - cron: '27 4 * * 2' + workflow_dispatch: ~ jobs: macos: @@ -19,23 +20,27 @@ jobs: include: - QT_VERSION: '5.15.2' XCODE_VERSION: '12.4' - GENERATOR: qmake + GENERATOR: 'Ninja' RELEASE: false - QT_VERSION: '6.2.4' XCODE_VERSION: '12.5.1' - GENERATOR: qmake - RELEASE: true + GENERATOR: 'qmake' + RELEASE: false - QT_VERSION: '6.2.4' XCODE_VERSION: '12.5.1' - GENERATOR: 'Ninja' + GENERATOR: 'Xcode' RELEASE: false + - QT_VERSION: '6.2.4' + XCODE_VERSION: '12.5.1' + GENERATOR: 'Ninja' + RELEASE: true steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Cache Qt - uses: actions/cache@v2 + uses: actions/cache@v3 id: cache with: path: ~/Cache @@ -43,7 +48,7 @@ jobs: - name: Qt install setup if: steps.cache.outputs.cache-hit != 'true' - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: '3.9' @@ -82,7 +87,7 @@ jobs: ./tools/uploadtool/upload_github.sh gui/GPSBabel-*.dmg - name: 'Upload Artifacts' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: MacOS_Installer ${{ join(matrix.*) }} path: gui/GPSBabel-*.dmg diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index 3b70aafa8..47b633780 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -8,6 +8,7 @@ on: branches: [ master ] schedule: - cron: '27 4 * * 2' + workflow_dispatch: ~ jobs: ubuntu: diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 8b5ea2442..f55238777 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -8,6 +8,7 @@ on: branches: [ master ] schedule: - cron: '27 4 * * 2' + workflow_dispatch: ~ jobs: @@ -64,10 +65,10 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Cache Qt - uses: actions/cache@v2 + uses: actions/cache@v3 id: cache with: path: ~/Cache @@ -75,7 +76,7 @@ jobs: - name: Install Qt setup(aqt) if: steps.cache.outputs.cache-hit != 'true' - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: '3.9' @@ -123,7 +124,7 @@ jobs: ./tools/uploadtool/upload_github.sh bld/gui/GPSBabel-*-Setup.exe - name: 'Upload Artifacts' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: Windows_Installer ${{ join(matrix.*) }} path: | diff --git a/.github/workflows/windows_ondemand.yml b/.github/workflows/windows_ondemand.yml index 3e2fff24f..d3eace547 100644 --- a/.github/workflows/windows_ondemand.yml +++ b/.github/workflows/windows_ondemand.yml @@ -53,10 +53,10 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Cache Qt - uses: actions/cache@v2 + uses: actions/cache@v3 id: cache with: path: ~/Cache @@ -64,7 +64,7 @@ jobs: - name: Install Qt setup(aqt) if: steps.cache.outputs.cache-hit != 'true' - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: '3.9' @@ -101,7 +101,7 @@ jobs: PNAME=./bld/gui/package/gpsbabel.exe GBTEMP=./gbtemp ./test_encoding_utf8 2>&1 - name: 'Upload Artifacts' - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: Windows_Installer ${{ join(matrix.*) }} path: | diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0f0f054b2..000000000 --- a/.travis.yml +++ /dev/null @@ -1,125 +0,0 @@ -language: cpp - -jobs: - include: - - os: linux - dist: bionic - services: docker - compiler: gcc - env: - - BUILD_TYPE="docker" - - DOCKER_IMG="qtio" - - os: linux - dist: bionic - services: docker - compiler: clang - env: - - BUILD_TYPE="docker" - - DOCKER_IMG="qtio" - - os: linux - dist: bionic - services: docker - compiler: gcc - env: - - BUILD_TYPE="docker" - - DOCKER_IMG="" - - os: linux - dist: bionic - services: docker - compiler: gcc - env: - - BUILD_TYPE="docker" - - DOCKER_IMG="focal" - - DOCKER_SCRIPT="./tools/build_extra_tests" - - os: linux - dist: bionic - services: docker - compiler: gcc - env: - - BUILD_TYPE="docker" - - DOCKER_IMG="f32" - #- os: linux - # dist: xenial - # compiler: gcc - # env: - # - BUILD_TYPE="local" - # - QT_VERSION="5.9.9" # 5.12.1 vtesto stmsdf fails with valgrind 3.11.0 which is on xenial - # addons: - # apt: - # packages: - # - expat - # - fop - # - valgrind - # - xsltproc - # - libxml2-utils - # - libusb-1.0-0-dev - # - docbook-xml - # - docbook-xsl - # - libgl1-mesa-dev - # - libxkbcommon-x11-0 # for qt onliner installer 3.2.1 - # cache: - # directories: - # - $HOME/Cache - # timeout: 600 - - os: osx - compiler: clang - env: - - QT_VERSION="5.9.9" - - QT_INSTALL_METHOD="installer" - cache: - directories: - - $HOME/Cache - timeout: 600 - - os: osx - osx_image: xcode10.3 - compiler: clang - env: - - QT_VERSION="5.12.10" - - QT_INSTALL_METHOD="installer" - cache: - directories: - - $HOME/Cache - timeout: 600 - - os: osx - osx_image: xcode11.6 - compiler: clang - env: - - QT_VERSION="5.15.2" - - QT_INSTALL_METHOD="artifactory" - cache: - directories: - - $HOME/Cache - timeout: 600 - - os: linux - dist: focal - compiler: gcc - env: - - BUILD_TYPE="coverage" - addons: - apt: - packages: - - gcovr - - lcov - - libusb-1.0-0-dev - - qt5-default - -install: - - if [ "${TRAVIS_OS_NAME}" = "linux" ] && [ "${BUILD_TYPE}" = "local" ]; then ./tools/travis_install_linux_local ${QT_VERSION} && source ${HOME}/Cache/qt-${QT_VERSION}.env; fi - - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then ./tools/travis_install_osx ${QT_VERSION} ${QT_INSTALL_METHOD} && source ${HOME}/Cache/qt-${QT_VERSION}.env; fi - -script: - - if [ "${TRAVIS_OS_NAME}" = "linux" ] && [ "${BUILD_TYPE}" = "coverage" ]; then ./tools/travis_script_linux_coverage; fi - - if [ "${TRAVIS_OS_NAME}" = "linux" ] && [ "${BUILD_TYPE}" = "docker" ]; then ./tools/travis_script_linux_docker ${DOCKER_IMG} ${DOCKER_SCRIPT}; fi - - if [ "${TRAVIS_OS_NAME}" = "linux" ] && [ "${BUILD_TYPE}" = "local" ]; then echo $PATH; ./build_and_test; fi - - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then ./tools/travis_script_osx; fi - -after_success: - - cd ${TRAVIS_BUILD_DIR} - # only deploy pushes to master or prs that target master. the prs will go to transfr.sh, the pushes go to github. - - if [ "${TRAVIS_OS_NAME}" = "osx" ] && [ "${QT_VERSION}" = "5.12.10" ] && [ "$TRAVIS_BRANCH" = "master" ]; then bash ./tools/uploadtool/upload.sh gui/GPSBabel-*.dmg; fi - -branches: - except: - - /^(?i:continuous)$/ # Do not build tags that we create when we upload to GitHub Releases - - /^(?i:continuous.*windows)$/ # Do not build tags that we create when we upload to GitHub Releases - -- 2.30.2